home *** CD-ROM | disk | FTP | other *** search
- {===========================================================================
- Date: 08-22-93 (01:50) Number: 35568
- From: JON JASIUNAS Refer#: NONE
- Subj: SERIAL # OF DISK Conf: (1221) F-PASCAL
- --------------------------------------------------------------------------- }
-
- Uses DOS, CRT;
- Type MIDRecord = Record
- InfoLevel : Word;
- SerialNum : LongInt; {This is the serial number...}
- VolLabel : Array[1..11] of Char;
- FatType : Array[1..8] of Char;
- End;
- Function Label_Fat(Var Mid : MidRecord; Drive : Word) : Boolean;
- Var Result : Word;
- Var Regs : Registers;
- Begin
- FillChar(Mid,SizeOf(Mid),0);
- FillChar(Regs,SizeOf(Regs),0);
- With Regs DO
- Begin
- AX := $440D;
- BX := Drive;
- CX := $0866;
- DS := Seg(Mid);
- DX := Ofs(Mid);
- Intr($21,Regs);
- Case AX of
- $01 : Label_Fat := False;
- $02 : Label_Fat := False;
- $05 : Label_Fat := False;
- Else Label_Fat := True;
- End;
- End;
- End;
-
- Var Mid : MidRecord;
- Begin
- ClrScr;
- If Label_Fat(Mid,0) Then
- With Mid DO
- Begin
- Writeln(SerialNum);
- Writeln(VolLabel);
- Writeln(FatType);
- End
- Else Writeln('Error Occured');
- End.
-